package com.nwpu.coursesupport.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.nwpu.coursesupport.entity.bean.BaseEntity;
import com.nwpu.coursesupport.enumeration.RoleType;
import com.nwpu.coursesupport.enumeration.Status;

import java.util.Date;

public class TaskAssignment extends BaseEntity{

    private Integer taskId;      // 任务id
    private Integer lessonId;    // 课程id
    private String className;    // 班级名称
    private Integer assignId;	 // 分配者id
    private String assignName;   // 分配名称
    private RoleType roleType;	 // 角色类型
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date assignDate;	 // 分配时间
    private Status isVisible;	 // 是否可见
    private Status isAnswerVisible; // 答案是否可见
    private int numsOfAnswerers; 	// 答案数量
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date deadline;       // 任务截止时间
	@JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
	private Date publishDatetime;// 任务公布日期


	public Integer getTaskId() {
		return taskId;
	}

	public void setTaskId(Integer taskId) {
		this.taskId = taskId;
	}

	public Integer getLessonId() {
		return lessonId;
	}

	public void setLessonId(Integer lessonId) {
		this.lessonId = lessonId;
	}

	public String getClassName() {
		return className;
	}

	public void setClassName(String className) {
		this.className = className;
	}

	public Integer getAssignId() {
		return assignId;
	}

	public void setAssignId(Integer assignId) {
		this.assignId = assignId;
	}

	public String getAssignName() {
		return assignName;
	}

	public void setAssignName(String assignName) {
		this.assignName = assignName;
	}

	public RoleType getRoleType() {
		return roleType;
	}

	public void setRoleType(RoleType roleType) {
		this.roleType = roleType;
	}

	public Date getAssignDate() {
		return assignDate;
	}

	public void setAssignDate(Date assignDate) {
		this.assignDate = assignDate;
	}

	public Status getIsVisible() {
		return isVisible;
	}

	public void setIsVisible(Status isVisible) {
		this.isVisible = isVisible;
	}

	public Status getIsAnswerVisible() {
		return isAnswerVisible;
	}

	public void setIsAnswerVisible(Status isAnswerVisible) {
		this.isAnswerVisible = isAnswerVisible;
	}

	public int getNumsOfAnswerers() {
		return numsOfAnswerers;
	}

	public void setNumsOfAnswerers(int numsOfAnswerers) {
		this.numsOfAnswerers = numsOfAnswerers;
	}

	public Date getDeadline() {
		return deadline;
	}

	public void setDeadline(Date deadline) {
		this.deadline = deadline;
	}

	public Date getPublishDatetime() {
		return publishDatetime;
	}

	public void setPublishDatetime(Date publishDatetime) {
		this.publishDatetime = publishDatetime;
	}
}
